const Service = require('egg').Service;
// 写一个例子 ，可作为下一个数据表crud的模板 
class UsersService extends Service {
     // 默认不需要提供构造函数。
  /* constructor(ctx) {
       super(ctx); // 如果需要在构造函数做一些处理，一定要有这句话，才能保证后面 `this.ctx` 的使用。
       // 就可以直接通过 this.ctx 获取 ctx 了
       // 还可以直接通过 this.app 获取 app 了
     } */
    async index(query) {
        try {
            const users = await this.ctx.model.Users.findAll(query);
        } catch (error) {
            
        }
       
       return users;
    }
    async create(params){
        let  users ; 
        try {
            users = this.ctx.model.Users.create(params);
        } catch (error) {
            this.ctx.logger.error(error);
        }
        
       return users;
    }
    async find(uid){
        try {
            const users = await this.ctx.model.Users.findByPk(uid);
        } catch (error) {
            this.ctx.logger.error(error);
        }
        return users;
    }
    async findAll(params){
        let users ;
        try {
            users = await this.ctx.model.Users.findAll({where:{...params}});
        } catch (error) {
            this.ctx.logger.error(error);
        }
        return users;
    }
    async update(uid,params){
        try {
            const users = this.ctx.model.Users.findByPk(uid)
            if(!users){
                this.ctx.status = 404 + "查无此数据";
                return null
            }
            await user.update(params)
        } catch (error) {
            this.ctx.logger.error(error);
        }
    }
    async destroy(uid){
        try {
            const users = this.ctx.model.Users.findByPk(uid)
            if(!user){
                this.ctx.status = 404 + "查无此数据";
                return null
            }
            await user.destroy();
        }catch (error) {
            this.ctx.logger.error(error);
        }
    }
}


module.exports = UsersService;
